2024年10~12月のクラスメソッドグループ社員によるOSSコントリビュートについてご紹介します

2024年10~12月のクラスメソッドグループ社員によるOSSコントリビュートについてご紹介します

Clock Icon2025.01.21

リテールアプリ共創部@大阪の岩田です。

3ヶ月に1回定期発信している OSS コントリビューション紹介ブログです。今回は2024年10月~12月のコントリビューションについてご紹介します!

参考までに前回のコントリビューション紹介ブログはこちらです↓

https://dev.classmethod.jp/articles/2023-4-6-cx-oss-contributes/

OSSコントリビューション実績一覧

HashiCorp Terraform AWS ProviderにBedrock向けのdata sourceを追加

たかくにさんによる HashiCorp Terraform AWS Provider へのコントリビュートです。

Bedrock の推論プロファイルを Terraform で扱えるように data リソースを追加しています。

https://github.com/hashicorp/terraform-provider-aws/pull/39342

Terraform はライセンス変更によって「OSS」という定義からは外れるのかもしれませんが、このコントリビュートが多くの人にとって有益なことは間違いないと思うので紹介させて頂きます。

motoにDSQL関連の実装を追加

による moto へのコントリビュートです。
re:Invent 2024 で発表された話題の新サービス Aurora DSQL 向けに create_clusterget_cluster のモック処理を実装しています。

motoが利用しているGitHub ActionsのワークフローがUbuntu24でも動作するよう修正

こちらも私による moto へのコントリビュートです。前述の DSQL 関連の実装中に気づいたのですが、GitHub Actions の Runner が ubuntu:latest を利用していました。従来 ubuntu:latest を指定した場合は ubuntu22.04 が利用されていましたが、 2024/12/5〜2025/1/17 の間で段階的に ubuntu:latestubuntu-24.04 を利用するよう移行が進んでいました。

https://github.blog/changelog/2024-11-05-notice-of-breaking-changes-for-github-actions/

ubuntu22.04 の Runner には Terraform コマンドが組み込まれてたのに対して ubuntu-24.04 の Runner には Terraform コマンドが含まれないため、「何もしていないのに急にCIが動かなくなる」ということが起こり得る状況でした。

https://github.com/actions/runner-images/issues/10636

ubuntu-24.04 でも問題なくワークフローが動作するように修正しています。

https://github.com/getmoto/moto/pull/8428

Node.js 向け Auth0 Management API SDK ライブラリがトークン取得のプロセスをカスタマイズできなくなっていることを報告

私による Node.js 向け Auth0 Management API SDK ライブラリへのコントリビュートです。

Lambda 上で Auth0の Management API を呼び出すAPIを開発する予定だったのですが、 素直に実装するとAuth0 に対してトークン取得のリクエストがスパイクする可能性がありました。
取得したアクセストークンの一次キャッシュとしてLambda実行環境のメモリを、二次キャッシュとして SSM Parameter ストアを利用するよう実装すれば良いかと思ったのですが、ライブラリのどこかのバージョンからアクセストークンを取得するプロセスをカスタマイズできなくなっていることに気付き、この問題を issue として報告しました。

https://github.com/auth0/node-auth0/issues/1050

この問題については以下のPRで修正されています。

https://github.com/auth0/node-auth0/pull/1069

Firecrackerのベンチマークテストをパラメータ化

私によるFirecrackerへのコントリビュートです。

従来の実装ではベンチマークテストが増える度にpytestのタイムアウト値を調整する必要がありました。この PR ではpytest の parametrize を利用して各ベンチマークテストを分割実行することで今後タイムアウト値の調整が不要になるよう改善しています。

https://github.com/firecracker-microvm/firecracker/pull/4974

※ブログ執筆時点では未マージです。

さいごに

今年も OSS コントリビュート頑張りましょう!

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.